Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.06.2013, 13:12
Новичок на форуме
Отправить личное сообщение для stigmat4j Посмотреть профиль Найти все сообщения от stigmat4j
 
Регистрация: 14.05.2013
Сообщений: 5

ajax post запрос и возвращение boolean
Доброго дня.

Собственно, проблема не дает покоя.
Есть функция, которая проверят админ ли пользователь или нет.
Пост запрос который это всё делает
function isAdmin(){
    $.ajax({
        type: 'post',
        url: '/isAdmin',
        dataType: "json",
        response: 'text',
        success: function (data) {
            if(data == "3")
                return true
        }
    });
}


И функция для теста
alert(isAdmin())
выдаёт undefined.
Сразу говорю, запрос верный, возвращает то, что нужно.
Где я ошибаюсь, подскажите пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 13.06.2013, 14:12
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

а так?
$.ajax( "/isAdmin" )
    .done(function() { if(data == "3") alert("success"); })
Ответить с цитированием
  #3 (permalink)  
Старый 13.06.2013, 18:41
Аватар для keen
Профессор
Отправить личное сообщение для keen Посмотреть профиль Найти все сообщения от keen
 
Регистрация: 28.03.2012
Сообщений: 376

и опять непонимание асинхронности.

кстати, забавно что от /isAdmin ответ приходит не булевский, а числовой. тройка, хых.
Ответить с цитированием
  #4 (permalink)  
Старый 13.06.2013, 19:12
Новичок на форуме
Отправить личное сообщение для stigmat4j Посмотреть профиль Найти все сообщения от stigmat4j
 
Регистрация: 14.05.2013
Сообщений: 5

Цифровой ответ - это тестовый ответ, не доделана система пользователей.

Уважаемый, keen, подскажите же, в чём моя ошибка и как мне исправить?
Ответить с цитированием
  #5 (permalink)  
Старый 13.06.2013, 19:21
Новичок на форуме
Отправить личное сообщение для stigmat4j Посмотреть профиль Найти все сообщения от stigmat4j
 
Регистрация: 14.05.2013
Сообщений: 5

Разобрался. Переделал ответ от сервера на булевский и запрос
function isAdmin(){
    return $.ajax({
        type: 'post',
        url: '/isAdmin',
        dataType: "json",
        async:false,
        response: 'text'
    }).responseText;
}
Ответить с цитированием
  #6 (permalink)  
Старый 13.06.2013, 19:40
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от stigmat4j
Разобрался. Переделал ответ от сервера на булевский и запрос
Красавчик. Теперь скрипты и интерфейс висят пока идет запрос. Отличное решение)
Ответить с цитированием
  #7 (permalink)  
Старый 13.06.2013, 20:29
Аватар для keen
Профессор
Отправить личное сообщение для keen Посмотреть профиль Найти все сообщения от keen
 
Регистрация: 28.03.2012
Сообщений: 376

внимание, правильный ответ:
function isAdmin(callback) {
    $.ajax({
        type: 'post',
        url: '/isAdmin',
        dataType: 'json',
        response: 'text',
        success: function (data) {
            callback(data == "3");
        }
    });
});

$('#important_button').on('click', function (
   isAdmin(function (flag) {
        alert(flag ? 'u\'re admin' : 'u\'re not admin');
   });
});
Ответить с цитированием
  #8 (permalink)  
Старый 13.06.2013, 22:16
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от stigmat4j
Разобрался. Переделал ответ от сервера на булевский и запрос
string в любом развале и без вариантов

Последний раз редактировалось dmitriymar, 13.06.2013 в 22:19.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AJAX запрос в Internet Explorer срабатывает через раз nikolayseo jQuery 5 13.11.2012 00:13
Какая разница между post запросами jquery и ajax? Rooner jQuery 2 18.06.2012 14:29
POST запрос на AJAX vah-smile AJAX и COMET 3 11.06.2011 23:34
проблемка с объектом, POST запрос Ajax zercs jQuery 1 24.04.2011 19:06
POST запрос воспринимается как OPTIONS neshta AJAX и COMET 0 29.03.2011 23:34